package com.ai.langchain4j.assistant;

import dev.langchain4j.service.UserMessage;
import dev.langchain4j.service.V;
import dev.langchain4j.service.spring.AiService;

import static dev.langchain4j.service.spring.AiServiceWiringMode.EXPLICIT;

//有记忆，不持久化
@AiService(
        wiringMode = EXPLICIT,
        chatModel = "qwenChatModel",
        chatMemory = "chatMemory"
)
//chatMemory是一个Bean对象
public interface MemoryChatAssistant {
//    String chat(String message);

//    @UserMessage("你是我的好朋友，请用上海话回答问题，并且添加一些表情符号。 {{it}}")
//    //{{it}}表示这里唯一的参数的占位符//这个{{it}}是默认的，用户数据message的信息都放放到it里面去
//
//    String chat(String message);


    //指定参数，用@V注解去指定和mybatis中的@params()一样的意思
    @UserMessage("你是我的好朋友，请用上海话回答问题，并且添加一些表情符号。{{message}}")
    String chat(@V("message") String userMessage);
}